export default [
    {
        path: 'watchComputer',
        name: 'watchComputer',
        component: () => import('@pages/Test/watch-computer/index.vue')
    },
    {
        path: 'markdownReander',
        name: 'markdownReander',
        component: () => import('@pages/Test/markdownReader/index.vue')
    },
    {
        path: 'updataProblem',
        name: 'updataProblem',
        component: () => import('@pages/Test/updataProblem/index.vue')
    },
    {
        path: 'vueSet',
        name: 'vueSet',
        component: () => import('@pages/Test/vueSet/index.vue')
    },
    {
        path: 'vModel',
        name: 'vModel',
        component: () => import('@pages/Test/v-model/index.vue')
    },
    {
        path: 'vFilters',
        name: 'vFilters',
        component: () => import('@pages/Test/v-filters/index.vue')
    },
    {
        path: 'vBuiltInCommands',
        name: 'vBuiltInCommands',
        component: () => import('@pages/Test/BuiltInCommands/index.vue')
    },
    {
        path: 'lifeCycle',
        name: 'lifeCycle',
        component: () => import('@pages/Test/lifeCycle/index.vue')
    },
    {
        path: 'vregularExpression',
        name: 'vregularExpression',
        component: () => import('@pages/Test/vregularExpression/index.vue')
    },
    {
        path: 'vuePlugins',
        name: 'vuePlugins',
        component: () => import('@pages/Test/vuePlugins/index.vue')
    },
    {
        path: 'autoImport',
        name: 'autoImport',
        component: () => import('@pages/Test/autoImport/index.vue')
    },
    {
        path: 'vcomponents',
        name: 'vcomponents',
        component: () => import('@pages/Test/vcomponents/index.vue')
    },
    {
        path: 'RenderFn',
        name: 'RenderFn',
        component: () => import('@pages/Test/RenderFn/index.vue')
    },
    {
        path: 'ref',
        name: 'ref',
        component: () => import('@pages/Test/ref/index.vue')
    },
    {
        path: 'vueminxn',
        name: 'vueminxn',
        component: () => import('@pages/Test/vueminxn/index.vue')
    },
    {
        path: 'props',
        name: 'props',
        component: () => import('@pages/Test/props/index.vue')
    },
    {
        path: 'todoList',
        name: 'todoList',
        component: () => import('@pages/Test/todoList/index.vue')
    },
    {
        path: 'storage',
        name: 'storage',
        component: () => import('@pages/Test/localStore/index.vue')
    },
    {
        path: 'selfEvent',
        name: 'selfEvent',
        component: () => import('@pages/Test/selfEvent/index.vue')
    },
    {
        path: 'VueEventBus',
        name: 'VueEventBus',
        component: () => import('@pages/Test/VueEventBus/index.vue')
    },
    {
        path: 'VuePubSub',
        name: 'VuePubSub',
        component: () => import('@pages/Test/VuePubSub/index.vue')
    },
    {
        path: 'vueAnimation',
        name: 'vueAnimation',
        component: () => import('@pages/Test/vueAnimation/index.vue')
    },
    {
        path: 'myAxios',
        name: 'myAxios',
        component: () => import('@pages/Test/myAxios/index.vue')
    },
    {
        path: 'model',
        name: 'model',
        component: () => import('@pages/Test/model/index.vue')
    }, {
        path: 'VueSlot',
        name: 'VueSlot',
        component: () => import('@pages/Test/VueSlot/index.vue')
    },
    {
        path: 'vuevueX',
        name: 'vuevueX',
        component: () => import('@pages/Test/vuevueX/index.vue')
    },
    {
        path: 'VueRoute',
        name: 'VueRoute',
        component: () => import('@pages/Test/VueRoute/index.vue'),
        children: [
            {
                path: "home",
                name: "home",
                component: () => import('@pages/Test/VueRoute/components/comA.vue'),
                beforeEnter: (to, from, next) => {
                    // 独享路由守卫
                    console.log("独享路由守卫to")
                    console.log("独享路由守卫from")
                    next()
                }
            },
            {
                path: "about",
                name: "about",
                component: () => import('@pages/Test/VueRoute/components/comB.vue'),
                children: [
                    {
                        path: "detail",
                        name: "detail",
                        component: () => import('@pages/Test/VueRoute/components/detail.vue'),
                    },
                    {
                        path: "mydetail/:id/:title",
                        name: "mydetail",
                        component: () => import('@pages/Test/VueRoute/components/detail.vue'),

                        /* props的第一种写法，值为对象
                        该对象中的所有key-value都会传给路由组件(detail.vue)
                        但很少用，因为传递的是死数据 */

                        /* props:{
                            id:'001',
                            title:'哈哈'
                        } */

                        /* props的第二种写法，值为布尔值
                            布尔值为真，就会把该路由组件收到的所有params参数，以props的形式传给路由组件(detail.vue)
                        */
                        /* props:true */

                        /* props的第三种写法，值为函数
                             可以获得$route
                        */
                        props($route) {
                            return { id: $route.params.id || $route.query.id, title: $route.params.title || $route.query.title }
                        }


                    }
                ]
            }
        ]
    },
    {
        path: "ui",
        name: 'ui',
        component: () => import('@pages/Test/UI/index.vue')
    },
    {
        path: "git",
        name: 'git',
        component: () => import('@pages/Test/git/index.vue')
    },
    {
        path: "netWork",
        name: 'netWork',
        component: () => import('@pages/Test/netWork/index.vue')
    },
    {
        path: "AJAX",
        name: 'AJAX',
        component: () => import('@pages/Test/AJAX/index.vue')
    },
    {
        path: "JSES",
        name: 'JSES',
        component: () => import('@pages/Test/JSES/index.vue')
    },
    {
        path: "HttpStatus",
        name: 'HttpStatus',
        component: () => import('@pages/Test/HttpStatus/index.vue')
    },
    {
        path: "performanceOptimization",
        name: 'performanceOptimization',
        component: () => import('@pages/Test/performanceOptimization/index.vue')
    },
    {
        path: "JS",
        name: 'JS',
        component: () => import('@pages/Test/JS/index.vue')
    },
    {
        path: "Css",
        name: 'Css',
        component: () => import('@pages/Test/Css/index.vue')
    }, 
    {
        path: "InputSelf",
        name: 'InputSelf',
        component: () => import('@pages/Test/InputSelf/index.vue')
    },
    {
        path: "FloatingLayout",
        name: 'FloatingLayout',
        component: () => import('@pages/Test/FloatingLayout/index.vue')
    },
    {
        path: "upload",
        name: 'upload',
        component: () => import('@pages/Test/upload/index.vue')
    },
]
